package org.hackystat.devcathlon.user;

/**
 * A devcathlon user, who must also be a registered Hackystat user.
 * This class stores user profile information.
 * The email and password must be legal credentials for the sensorbase associated with this
 * Devcathlon instance.   
 * @author Philip Johnson
 */
public class User {
  /** The first name of this user. */
  private String firstName;
  /** The last name of this user. */
  private String lastName;
  /** The email for this user, also their Hackystat account. */
  private String email;
  /** The hackystat password for this user. */
  private String password;

  /**
   * Creates a new user. Typically done by the UserManager.  
   * @param firstName The first name. 
   * @param lastName The last name. 
   * @param email The email. 
   * @param password The password. 
   */
  User(String firstName, String lastName, String email, String password) {
    this.firstName = firstName;
    this.lastName = lastName;
    this.email = email;
    this.password = password;
  }
  
  /**
   * Return the first name of this user. 
   * @return The first name. 
   */
  public String getFirstName() {
    return this.firstName;
  }

  
  /**
   * Return the last name of this user. 
   * @return The last name. 
   */
  public String getLastName() {
    return this.lastName;
  }

  /**
   * Return the email (Hackystat account) for this user. 
   * @return The email.
   */
  public String getEmail() {
    return this.email;
  }

  /**
   * Return the Hackystat password of this user. 
   * @return The password.
   */
  public String getPassword() {
    return this.password;
  }

}
